#ifndef __SerializationObject_H__
#define __SerializationObject_H__

#include <xml/IFactoryRecord.h>
#include <xml/IXmlNode.h>

namespace irr{

/***
 * @class ISerializationObject
 * ����� ��������� ������� ������������
 * */
class ISerializationObject{
public:
	virtual irr::xml::IXmlNode*getSerialized(){
		irr::xml::IXmlNode*node=irr::xml::createXmlNode();
		getSerialized(node);
		return node;
	}
	virtual void getSerialized(irr::xml::IXmlNode*node)=0;
	virtual irr::xml::TagResult setSerialized(irr::xml::IXmlNode*node)=0;
};

}//namespace irr

#endif
